#include<iostream>
using namespace std;

namespace test3 {
	int main3() {
		unique_ptr<int> p_ptr1(new int(10));
		cout << "union ptr1=" << *p_ptr1 << endl;

		shared_ptr<int> p_ptr2(new int(20));
		shared_ptr<int> p_ptr3(p_ptr2);
		cout << "shared ptr2=" << *p_ptr2 << endl;
		cout << "shared ptr3=" << *p_ptr3 << endl;

		weak_ptr<int> p_ptr4(p_ptr2);
		cout << "weak ptr4=" << &p_ptr4 << endl;

		return 0;
	}
}